package ua.dogar.vectors;

import java.util.Iterator;

import ua.dogar.patterns.Observer;





public class ProtectedVector implements Vector{
	private LinkedListVector listVec;
	public ProtectedVector(LinkedListVector listVec){
		this.listVec = listVec;
	}
	@Override
	public Iterator<Double> iterator() {
	
		return listVec.iterator();
	}

	@Override
	public double getElement(int index) {
		return listVec.getElement(index);
	}

	@Override
	public void setElement(double value, int index) {
		
	}

	@Override
	public int getLength() {
		return listVec.getLength();
	}

	@Override
	public void setElementsFromArray(double[] arr) {
		
	}

	@Override
	public void setElementsFromVector(Vector listVec) {
		
	}

	@Override
	public Vector mulVector(int num) {
		return null;
	}

	@Override
	public void addVector(Vector v) {
		
	}
	@Override
	protected Object clone() throws CloneNotSupportedException {
		ProtectedVector clone = (ProtectedVector) super.clone();
		clone.listVec =  (LinkedListVector) this.listVec.clone();
		return clone;
	}
	@Override
	public boolean compare(Vector listVec) {
		return listVec.compare(listVec);
	}

	@Override
	public int hashCode() {
		return listVec.hashCode();
	}
	@Override
	public boolean equals(Object obj) {
		return listVec.equals(obj);
	}
	@Override
	public String toString() {
		return listVec.toString();
	}
	@Override
	public void registerObserver(Observer o) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void removeObserver(Observer o) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void notifyObservers(int index) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void notifyObservers() {
		// TODO Auto-generated method stub
		
	}

}
